// 测试人员数据列表项类型
export interface IUserListItem {
  id: Nullable<number>;
  name: Nullable<string>;
  code: Nullable<string>;
  gender: Nullable<number>;
  grade: Nullable<number>;
  type: Nullable<number>;
  workStation: Nullable<string>;
  birthday: Nullable<string>;
  recordYear: Nullable<number>;
  job: Nullable<string>;
  cardNo: Nullable<string>;
}

// 修改用户信息参数
export interface IUserUpdate {
  id: number;
  username: string;
  name: string;
  gender?: number;
  stu_code: string;
  college?: number;
  major?: number;
  grade?: number;
  phone: string;
}
// 分页查询测试人员接口接收值类型
export type IUserListData = ListQueryModule & {
  data: IUserListItem[];
};
// 测试人员数据列表类型
export type IUserList = IUserListItem[] | [];

// 用户导入参数
export interface IUserImport {
  type: Nullable<number>;
}

// 用户导出参数
export interface IUserExport extends IUserImport {
  name?: string;
  code?: string;
  gender?: number;
  grade?: number;
}

// 分页查询管理员列表参数
export interface IUserManageListItem {
  id: Nullable<number>;
  name: Nullable<string>;
  login: string;
  createTime: number;
}

// 分页查询管理人员接口接收值类型
export type IUserManageListData = ListQueryModule & {
  data: IUserManageListItem[];
};

// 分页列用户未拥有的角色
export interface IExclusive {
  current: number;
  size: number;
  userId?: number;
}

// 添加用户角色
export interface IAccountRole {
  userId: number;
  roleIds: number[] | [] | undefined;
}

// 修改密码
export interface IPutPassword {
  userId: number;
  oldPassword: string;
  newPassword: string;
}

// 重置密码
export interface IPutPwdReset {
  userId: number;
}
